package org.zhadoop.streaming.operator;

import org.zhadoop.streaming.event.TupleEvent;
import org.zhadoop.streaming.exception.StreamingException;
import org.zhadoop.streaming.serde.StreamSerDe;

/**
 * 流算子的基本接口
 * @author zwd
 *
 */
public interface  IOutputStreamOperator extends IStreamOperator{
	
	/**
	 * 运行时的执行接口
	 * @param streamName
	 * @param event
	 * @throws StreamingException
	 */
	void execute(String streamName,TupleEvent event) throws StreamingException;
	
	/**
	 * 设置序列化和反序列化
	 * @param serde
	 */
	void setSerde(StreamSerDe serde);
	
	/**
	 * 获取反序列化类
	 * @return
	 */
	StreamSerDe getSerDe();
}
